﻿<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<SG.Domain.Articulo>" %>

<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
	Crear Artículo
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="TitlePage" runat="server">
	Crear Artículo
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HeaderLink" runat="server">
<%: Html.ActionLink("Ir al listado", "Index") %>
</asp:Content>



<asp:Content ID="Content5" ContentPlaceHolderID="Head" runat="server">
    
    <link href="<%=Url.Content("~/Scripts/dhtmlx/dhtmlxGrid/codebase/dhtmlxgrid.css") %>" rel="stylesheet" type="text/css" />   
    <link href="<%=Url.Content("~/Scripts/dhtmlx/dhtmlxGrid/codebase/dhtmlxgrid_skins.css") %>" rel="stylesheet" type="text/css" />
    <link href="<%=Url.Content("~/Scripts/dhtmlx/dhtmlxGrid/codebase/skins/dhtmlxgrid_dhx_blue.css") %>" rel="stylesheet" type="text/css" />


    <link href="<%=Url.Content("~/Content/ui-lightness/jquery-ui-1.8.13.custom.css") %>" rel="stylesheet" type="text/css" />

  
    <script src="<%=Url.Content("~/Scripts/dhtmlx/dhtmlxGrid/codebase/dhtmlxcommon.js") %>" type="text/javascript"></script>
     <script src="<%=Url.Content("~/Scripts/dhtmlx/dhtmlxGrid/codebase/dhtmlxgrid.js") %>" type="text/javascript"></script>
    <script src="<%=Url.Content("~/Scripts/dhtmlx/dhtmlxGrid/codebase/dhtmlxgridcell.js") %>" type="text/javascript"></script>
    <script src="<%=Url.Content("~/Scripts/dhtmlx/dhtmlxGrid/codebase/ext/dhtmlxgrid_filter.js") %>" type="text/javascript"></script>


      <script src="<%=Url.Content("~/Scripts/jquery-ui-1.8.13.custom.min.js") %>" type="text/javascript"></script>
      <script src="<%=Url.Content("~/Scripts/jquery.ui.datepicker-es.js") %>" type="text/javascript"></script>


</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
    <% using (Html.BeginForm("CreateEdit", "Articulo", null, FormMethod.Post, new {id="formCreateEdit" }))
       {%>
        <%: Html.ValidationSummary(true)%>

        <fieldset>
            <legend>Datos principales</legend>
            <table class="tableData">
            <colgroup>
                <col width="200px" />
                 <col width="300px" />
            </colgroup>
                <%if (Model.NumeroArticulo > 0)
                  { %>
                <tr>
                    <td class="label">Número de artículo</td>
                    <td class="data"><%: Html.TextBoxFor(model => model.NumeroArticulo, new { @style = "width:100%" })%></td>
                </tr>
                <%}
                  else {
                      Model.Stock = 2000;
                      Model.TasaAlmacenamiento = 0.1F;
                      Model.UltimoPrecio = 50;
                      Model.DemandaAnual=240;
                       Model.Alpha = 0.1F;
                       Model.Gamma = 0.05F;
                       Model.Descripcion = "Mercadería";
                      Model.Beta = 0.1F;
                      Model.CantEstaciones = 2;                      
                      
                     
                  }%>
                <tr>
                    <td class="label">Categoría</td>
                    <td class="data"><%: Html.DropDownList("IdCategoria", new SelectList(new SG.Logic.ExpArticulo().GetAllCategoria(), "Id", "Nombre", (Model.Categoria != null ? Model.Categoria.Id : 0)), new { @style = "width:100%" })%></td>
                </tr>
                <tr>
                    <td class="label">Política</td>
                    <td class="data"><%: Html.DropDownList("IdPolitica", new SelectList(new SG.Logic.ExpArticulo().GetAllPolitica(), "Id", "Nombre", (Model.Politica != null ? Model.Politica.Id : 0)), new { @style = "width:100%" })%></td>
                 </tr>
               
                <tr>
                    <td class="label">Nombre</td>
                    <td class="data"><%: Html.TextBoxFor(model => model.Nombre, new { @style = "width:100%" })%></td>
                </tr>
                <tr>
                    <td class="label">Descripción</td>
                    <td class="data"><%: Html.TextBoxFor(model => model.Descripcion, new { @style = "width:100%" })%></td>
                </tr>
                
                 <tr>
                    <td class="label">Stock</td>
                    <td class="data"><%: Html.TextBoxFor(model => model.Stock, new { @style = "width:100%" })%></td>
                </tr>
                 <tr>
                    <td class="label">Precio</td>
                    <td class="data"><%: Html.TextBoxFor(model => model.UltimoPrecio, new { @style = "width:100%" })%></td>
                </tr>
                <tr>
                    <td class="label">Demanda anual</td>
                    <td class="data"><%: Html.TextBoxFor(model => model.DemandaAnual, new { @style = "width:100%" })%></td>
                </tr>
                <tr>
                    <td class="label">Tasa de almacenamiento</td>
                    <td class="data"><%: Html.TextBoxFor(model => model.TasaAlmacenamiento, new { @style = "width:100%" })%></td>
                </tr>
                <%--<tr>
                    <td class="label">Nivel Servicio</td>
                    <td class="data"> <%: Html.TextBoxFor(model => model.NivelServicio, new { @style = "width:100%" })%></td>
                </tr>--%>
                <tr>
                    <td class="label">Nivel Servicio</td>
                    <td class="data"><%: Html.DropDownList("IdNivelServicio", new SelectList(new SG.Logic.ExpArticulo().GetAllNivelServicio(), "Id", "Valor", (Model.NivelServicio != null ? Model.NivelServicio.Id : 0)), new { @style = "width:100%" })%></td>
                </tr>


            </table>
            </fieldset>
            <fieldset>
            <legend>Datos Suavizamiento</legend>
           
            <table class="tableData" style="float:left">
                <colgroup>
                    <col width="200px" />
                     <col width="300px" />
                </colgroup>
                <tr>
                    <td class="label">Suavizamiento</td>
                    <td class="data"><%: Html.DropDownList("Suavisamiento", new SelectList(new SG.Logic.ExpArticulo().GetAllSuavizamiento(), "Id", "Descripcion"), new { @style = "width:100%", onchange = "changeSuavisamiento(this)" })%></td>
                </tr>
                <tr>
                    <td class="label">Alpha</td>
                    <td class="data"><%: Html.TextBoxFor(model => model.Alpha, new { @style = "width:100%" })%></td>
                </tr>
                 <tr id="trBeta">
                    <td class="label">Beta</td>
                    <td class="data"><%: Html.TextBoxFor(model => model.Beta, new { @style = "width:100%" })%></td>
                </tr>
                 <tr id="trGamma">
                    <td class="label">Gamma</td>
                    <td class="data"><%: Html.TextBoxFor(model => model.Gamma, new { @style = "width:100%" })%></td>
                </tr>
                 <tr  id="trTendencia">
                    <td class="label">Tendencia</td>
                    <td class="data"><%: Html.TextBox("Tendencia", "20", new { @style = "width:100%" })%></td>
                </tr>                 
                 <tr id="trCantidadEstaciones">
                    <td class="label">Cantidad de estaciones</td>
                    <td class="data"><%: Html.TextBoxFor(model => model.CantEstaciones, new { @style = "width:100%", onchange = "txtOnChange();" })%></td>
                </tr>
                 
                
                 <tr id="trFechaPrimerEstacion">
                    <td class="label">Fecha inicio primera estación</td>
                    <td class="data"><%: Html.TextBox("FechaInicioPrimeraEstacion", "", new { @id = "FechaInicioPrimeraEstacion", @style = "width:100%", @onchange = "txtOnChange();" })%></td>
                </tr>
                <tr id="trPromedio">
                    <td class="label">Promedio</td>
                    <td class="data"><%: Html.TextBox("Promedio", "65", new { @style = "width:100%" })%></td>
                </tr>
               

                  <tr id="trErrorPromedio">
                    <td class="label">Error promedio</td>
                    <td class="data"><%: Html.TextBox("ErrorPromedio", "10", new { @style = "width:100%" })%></td>
                </tr>

                 <tr id="trMSEn">
                    <td class="label">MSEn</td>
                    <td class="data"><%: Html.TextBox("MSEn", "20", new { @style = "width:100%" })%></td>
                </tr>

                <tr id="trDesviacionEstandar">
                    <td class="label">Desviación Estandar</td>
                    <td class="data"><%: Html.TextBox("DesviacionEstandar", "15", new { @style = "width:100%" })%></td>
                </tr>

            </table>
             <div id="gridList" style="height:100%; float:right"></div>
            </fieldset>
                
            <p>
                <input type="button" value="Guardar" onclick="BeforeSave()" />
            </p>




            

            <input type="hidden" id="FechaPeriodo" name="FechaPeriodo" value="" />
            <input type="hidden" id="ValorPeriodo" name="ValorPeriodo" value="" />
        
  <% } %>
<%--
    <% using (Html.BeginForm("Predict","Articulo")) {%>
  
     <%if (Model.NumeroArticulo > 0)
                 { %>
                   <table class="tableData">
                    <tr>
                        <td class="label">Número de periodo</td>
                        <td class="data"><%=Html.TextBox("NroPeriodo","0") %></td>
                    </tr>
                     <tr>
                        <td colspan="2"><input type="submit"  value="Predecir"/></td>
                        
                    </tr>
                </table>
                <%} %>
     <% } %>--%>



   <script type="text/javascript">
       $(document).ready(function () {
           $("#trBeta").hide();
           $("#trGamma").hide();
           $("#trTendencia").hide();
           $("#trCantidadEstaciones").hide();
           $("#trFechaPrimerEstacion").hide();
           $("#gridList").hide();


         $( "#FechaInicioPrimeraEstacion" ).datepicker();
       
       });

       function changeSuavisamiento(ob) {
           switch (ob.value) {
               case "1":
                   $("#trBeta").hide();
                   $("#trGamma").hide();
                   $("#trTendencia").hide();
                   $("#trCantidadEstaciones").hide();
                   $("#trFechaPrimerEstacion").hide();
                   $("#gridList").hide();

                   break;
               case "2":
                   $("#trBeta").show();
                   $("#trGamma").hide();
                   $("#trTendencia").show();
                   $("#trCantidadEstaciones").hide();
                   $("#trFechaPrimerEstacion").hide();
                   $("#gridList").hide();
                   break;
                   
               default:
                   $("#trBeta").hide();
                   $("#trGamma").show();
                   $("#trTendencia").hide();
                   $("#trCantidadEstaciones").show();
                   $("#trFechaPrimerEstacion").show();
                   $("#gridList").show();
           }

       }
       function txtOnChange(){
            
            var CantRow= $("#CantEstaciones").val();
            if(CantRow>364) {alert("La cantidad de estaciones debe ser inferior a 364"); return;}
            var strFechaI=$("#FechaInicioPrimeraEstacion").val();
            var fechaI=new Date(strFechaI.split("/")[1] +"/"+strFechaI.split("/")[0]+"/"+strFechaI.split("/")[2]);
            var fechaIAux=new Date(strFechaI.split("/")[1] +"/"+strFechaI.split("/")[0]+"/"+strFechaI.split("/")[2]);

            var dias = 364 /CantRow;
            var ultimo=fechaIAux;
            mygrid.clearAll();
            
            
            for (var i = 0; i < CantRow; i++) {
                
                 mygrid.addRow(i,(i+1)+",1,"+ultimo.getDate()+"/"+(ultimo.getMonth()+1)+"/"+ultimo.getYear());
                 
                 ultimo.setTime(ultimo.getTime()+ dias*24*60*60*1000);
            }
           
       
       }

       function BeforeSave(){
       var option=$("#Suavisamiento").val();
       var valorPeriodo=$("#ValorPeriodo");
       var fechaPeriodo=$("#FechaPeriodo");
        switch (option) {
               case "1":
                   if(isNaN( $("#Alpha").val().replace(',','.'))||  $("#Alpha").val().replace(',','.') <0 || isNaN( $("#Promedio").val().replace(',','.')) || $("#Promedio").val().replace(',','.') <0){
                        alert("Revise los valores del suavisamiento.");
                        return;
                   }

                   break;
               case "2":
                   
                   break;
                 
                   
               default:
                for (var id=0; id<mygrid.getRowsNum(); id++){
                    if(valorPeriodo.val()==""){       
                            valorPeriodo.val(mygrid.cells(id,1).getValue());
                            fechaPeriodo.val(mygrid.cells(id,2).getValue());
                    }else{
                            valorPeriodo.val(valorPeriodo.val()+"|"+mygrid.cells(id,1).getValue());
                            fechaPeriodo.val(fechaPeriodo.val()+"|"+mygrid.cells(id,2).getValue());
                    }
                
                }
              
                   
           }

       document.forms["formCreateEdit"].submit();
       }

         window.onload=doOnLoad;
        function doOnLoad(){
           
            mygrid = new dhtmlXGridObject('gridList');
            mygrid.setImagePath("<%=Url.Content("~/Scripts/dhtmlx/dhtmlxGrid/codebase/imgs/") %>");
            mygrid.setHeader("Número de estación,Valor,Fecha inicio");
            mygrid.attachHeader("#numeric_filter,#text_filter,#text_filter");
            mygrid.setInitWidths("150,*,*");
            mygrid.setColAlign("center,left,left");
            mygrid.setColTypes("ro,ed,ro");
            mygrid.setColumnIds("NUMEROPERIODO,VALOR,FECHA");
            mygrid.enableEditEvents(true,false,false);
            mygrid.setSkin("light");
            mygrid.setColSorting("int,str,str");
            
            mygrid.enableAutoHeight(true);
           

            
            mygrid.init();
           
        }
   </script>
</asp:Content>

